package cn.lenchu.data.dao;

import cn.lenchu.data.model.Group;

import java.util.List;

/**
 * @author lenchu
 */
public interface GroupDao {

    /**
     * 查找用户的所有组合
     * @param userId 用户id
     * @return 组合列表
     */
    List<Group> listByUserId(Integer userId);

    /**
     * 通过id查找
     * @param id id
     * @param withDetail 是否查询组合详情(groupStockList)
     * @return Group
     */
    Group getById(Integer id, boolean withDetail);

    /**
     * 添加或更新组合(仅操作group 不连带GroupStock)
     * @param group group
     * @return Group
     */
    Group upsert(Group group);

    /**
     * 通过id删除
     * @param id id
     * @return Group
     */
    Group deleteById(Integer id);
}
